package org.cnam.mobileShopping.bean;

import java.util.List;

import org.cnam.mobileShopping.wsclient.WSEntityListId;
import org.json.JSONException;
import org.json.JSONObject;

/**
 * Categorie d'un produit caractétérisé par un libellé
 * 
 * @author laurent
 * 
 */
@WSEntityListId("category")
public class Category {

	/** Identifiant d'une catégorie */
	private Integer categoryid;
	/** Libellé de la catégorie */
	private String label;
	/** Liste d'identifiant de magasin associé à cette catégorie */
	private List<Integer> stores;

	// TODO gérer les listes de magasins

	public Category() {

	}

	public Category(Integer id, String libelle) {
		super();
		this.categoryid = id;
		this.label = libelle;
	}

	public static Category parseJSON(JSONObject jsonObject)
			throws JSONException {
		return new Category(jsonObject.getInt("id"),
				jsonObject.getString("libelle"));
	}

	@Override
	public String toString() {
		StringBuffer result = new StringBuffer();
		// result.append("Category");
		// result.append(" id=");
		// result.append(categoryid);
		// result.append(" libelle=");
		result.append(this.label);
		return result.toString();
	}

	public Integer getCategoryid() {
		return categoryid;
	}

	public void setCategoryid(Integer categoryid) {
		this.categoryid = categoryid;
	}

	public String getLabel() {
		return label;
	}

	public void setLabel(String label) {
		this.label = label;
	}

	public List<Integer> getStores() {
		return stores;
	}

	public void setStores(List<Integer> stores) {
		this.stores = stores;
	}
}
